const common01 = require("./common01.js"); //引入自定义模块必须以./或../开头，不可省略
console.log(common01);

console.log("-------------------------------------------------------------------------------------");
const common02 = require("./common02"); //可以省略js后缀
console.log(common02);
console.log(common02.add(1, 2));
console.log(common02.sayHello());

console.log("-------------------------------------------------------------------------------------");
const tools = require("tools"); //node会默认在node_modules下找模块，可以不加./或../
console.log(tools);

console.log("-------------------------------------------------------------------------------------");
const bar = require("bar/bar");
console.log(bar);

console.log("-------------------------------------------------------------------------------------");
const foo = require("foo"); //如果不写包路径，需生成package.json文件（命令：npm init --yes），默认找"main": "foo.js"
console.log(foo);


/*
	exports和module.exports区别，exports是module.exports超链接，即exports = module.exports = {};
		- 通过exports只能使用.的方式来向外暴露内部变量
			exports.xxx = xxx

		- 而module.exports既可以通过.的形式，也可以直接赋值对象
			module.exports.xxx = xxxx
			module.exports = {}
		参见：test_exports.js例子
 */
console.log("-------------------------------------------------------------------------------------");
const myModule = require("./module");
console.log(myModule.name);
console.log(myModule.age);
console.log(myModule.sayHello("张三"));

